package org.jix.gbook.kv.api;

import org.jix.framework.common.response.Response;
import org.jix.gbook.kv.constant.ApiConstants;
import org.jix.gbook.kv.dto.req.AddNoteContentReqDTO;
import org.jix.gbook.kv.dto.req.DeleteNoteContentReqDTO;
import org.jix.gbook.kv.dto.req.FindNoteContentReqDTO;
import org.jix.gbook.kv.dto.resp.FindNoteContentRespDTO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

/**
 * @author stark
 * @date 2025/7/21 16:36
 * @description
 **/
@FeignClient(name = ApiConstants.SERVICE_NAME)
public interface KeyValueFeignApi {

    String PREFIX = "/kv";

    @PostMapping(value = PREFIX + "/note/content/add")
    Response<?> addNoteContent(@RequestBody AddNoteContentReqDTO addNoteContentReqDTO);

    @PostMapping(value = PREFIX + "/note/content/find")
    Response<FindNoteContentRespDTO> findNoteContent(@RequestBody FindNoteContentReqDTO findNoteContentReqDTO);

    @PostMapping(value = PREFIX + "/note/content/delete")
    Response<?> deleteNoteContent(@RequestBody DeleteNoteContentReqDTO deleteNoteContentReqDTO);
}
